package com.exer.dataload;

/**
 * doris数据导入接口
 */
public interface DorisDataLoad {

    /**
     * 检查doris中表是否存在
     *
     * @return true存在，false不存在
     */
    public boolean dorisTableExistenceChecker();

    /**
     * 在doris中创建表
     *
     * @param dorisDDL doris建表语句
     * @return 是否创建成功
     */
    public boolean createDorisTable(String dorisDDL);

    /**
     * 检查doris表中是否有数据
     *
     * @return 0则无数据
     */
    public long getDorisTableCount();

    /**
     * 导入数据到doris，以InsertInto语句的方式，进行增量同步
     * doris官方不推荐
     */
    public void dorisDataLoadByInsertIntoIncremental();

    /**
     * 根据表名找出id差异集合,并以streamLoad的方式插入到doris中
     */
    public void dorisDataLoadByIdDifferences();

    /**
     * 导入数据到doris，以InsertInto语句的方式，进行全量同步
     * doris官方不推荐
     */
    public void dorisDataLoadByInsertIntoFull();

    /**
     * 导入数据到doris，以StreamLoad的方式，进行全量同步
     */
    public void dorisDataLoadByStreamLoadFull();

    /**
     * 导入数据到doris，以StreamLoad的方式，进行增量同步
     */
    public void dorisDataLoadByStreamLoadIncremental();


}
